-
-
Notifications
You must be signed in to change notification settings - Fork 5.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix LibGit2 tests on x86_64-linux-musl
#45638
Conversation
f79bca4
to
eb52446
Compare
ded7f3a
to
b05dfd2
Compare
I presume this would fix #28805? |
b05dfd2
to
4a8bb09
Compare
Hmmm, those changes don't seem to work; it appears that on glibc linux now we fail to read in the passphrase. |
Previously, if given a NULL `Cstring` we would blithely call `strlen()` on it, which resulted in a segfault. It is better if we throw an exception instead.
This works around the lack of `getch()` on non-windows platforms, such that we can use the windows-specific `getpass()` on all platforms. This was necessary to prevent breakage from `musl` due to a bad interaction between `with_fake_pty()` and `getpass()`.
a0d109d
to
22042be
Compare
Passed locally, running full test on CI now! |
There are two mysterious coredumps that I don't understand; looks like we segfault within |
Update: we're still having problems with this, just unreliably, across all Linux platforms now. Joy. Keno and I diagnosed this down to a race condition in our test suite, paired with a kernel oddity. It appears that special control characters such as EOF ( The fix is as simple as it is heartbreaking; we must put |
The LibGit2 tests have been failing on musl for a while now; Jameson, Alex and I have been investigating on Slack, and I'm assembling the fixes here.